package com.example.dao;

import com.example.model.BookInfo;

import java.math.BigDecimal;
import java.util.ArrayList;
import java.util.List;
import java.util.Random;

/**
 * 图书数据访问层
 * 职责：负责图书数据的访问操作
 */
public class BookDao {

    /**
     * 模拟数据获取方法
     * 在实际项目中，这里会连接数据库执行查询
     *
     * @return 模拟的图书数据列表
     */
    public List<BookInfo> mockData() {
        List<BookInfo> books = new ArrayList<>(); // 创建空列表

        // 生成5条模拟数据
        for (int i = 0; i < 5; i++) {
            BookInfo book = new BookInfo(); // 创建图书对象
            book.setId(i);                  // 设置ID
            book.setBookName("书籍" + i);    // 设置书名
            book.setAuthor("作者" + i);      // 设置作者
            book.setCount(i * 5 + 3);       // 设置数量（模拟算法）
            book.setPrice(new BigDecimal(new Random().nextInt(100))); // 设置随机价格
            book.setPublish("出版社" + i);   // 设置出版社
            book.setStatus(1);              // 设置状态
            books.add(book);                // 添加到列表
        }

        return books; // 返回数据列表
    }
}
